Here are plots of the current data for the number of deaths, hospitalizations, positive and negative tests for each state over time.

The cumulative plots show the total number in each category, while the log plots show the rate of change in each category. The raw change plots show the daily increase or decrease.

plot_covid = function(data, y) {
  
  p = data %>%
    ggplot(aes_string("date", y, color = "state")) +
    geom_line() +
    scale_color_manual(values = wesanderson::wes_palette("Darjeeling1", 56, "continuous")) +
    theme_minimal()
  
  if (grepl("change", y)) {
    
    str = gsub("_change", "", y)
    p = p + labs(x = "\ndate", y = sprintf("change in number of %s\n", str))
    
  } else {
    p = p + labs(x = "\ndate", y = sprintf("number of %s\n", gsub("_", " ", y)))
  }
    
  
  plotly::ggplotly(p)
}

plot_covid_log = function(data, y) {
  
  p = data %>%
    mutate(y = log2(!!rlang::parse_quosure(y))) %>%
    ggplot(aes(date, y, color = state)) +
    geom_line() +
    labs(x = "\ndate", y = sprintf("log2 number of %s\n", gsub("_", " ", y))) +
    scale_color_manual(values = wesanderson::wes_palette("Darjeeling1", 56, "continuous")) +
    theme_minimal()
    
  
  plotly::ggplotly(p)
}

deaths

cumulative

plot_covid(data, "deaths")

log

plot_covid_log(data, "deaths")

raw change

plot_covid(data, "deaths_change")

hospitalizations

cumulative

plot_covid(data, "hospitalizations")

log

plot_covid_log(data, "hospitalizations")

raw change

plot_covid(data, "hospitalizations_change")

positive test results

cumulative

plot_covid(data, "positive_test_results")

log

plot_covid_log(data, "positive_test_results")

raw change

plot_covid(data, "positive_test_results_change")

negative test results

cumulative

plot_covid(data, "negative_test_results")

log

plot_covid_log(data, "negative_test_results")

raw change

plot_covid(data, "negative_test_results_change")